|
===================================== 〔語彙分解〕的な部分一致の検索結果は以下の通りです。 ・ プログラミング : [ぷろぐらみんぐ] 【名詞】 1. programming 2. programing, (n) programming/programing ・ 言 : [げん] 【名詞】 1. word 2. remark 3. statement ・ 語 : [ご] 1. (n,n-suf) language 2. word
XLは(拡張可能言語)を表しており、コンセプトプログラミングに則り設計された、現時点で唯一のプログラミング言語である。 XLはプログラマによって再構成可能な構文と意味論を持つことを特徴としている。コンパイラ''プラグイン''を使って言語に新しい機能を追加できる。あるプラグインの基本セットは比較的標準的な命令型プログラミング言語を実装している。プログラマは独自のプラグインを書くことで、記号微分のように個々の応用に則した記法を実装し、組み込みの言語機能と同様に使用できる。 ==言語== XLは4つの異なるレベルで定義されている: * XL0: 入力文字列を構文木に変換する方法を定義する。 * XL1: C++に相当する機能を備えた基本言語を定義する。 * XL2: 基本データ型と演算子を含む標準ライブラリを定義する。 * XLR: XL0を基にしたXLの動的ランタイムを定義する。 XLにはプリミティブ型や予約語がない。整数や加算演算子といった、有用なデータ型と演算子は、すべて標準ライブラリ(XL2)で定義されている。XL1は異なる実行環境間で移植可能である。一方でXL2にはそのような保証はなく、もしCPUが浮動小数点数の乗算を実装していなければ、それに対応した演算子の定義は標準ライブラリから欠落しているかもしれず、また、浮動小数点数の乗算はコンパイル時エラーとなるかもしれない。 XLで書かれたHello Worldは次のようになる。 use XL.TEXT_IO WriteLn "Hello World" より大規模なプログラムにふさわしいスタイルで書かれた別のプログラムは次のようになる。 import IO = XL.TEXT_IO IO.WriteLn "Hello World" XLRでの階乗の再帰的な実装は次のようになる。 0! -> 1 N! -> N * (N-1)! 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「XL (プログラミング言語)」の詳細全文を読む スポンサード リンク
|